iT邦幫忙

2022 iThome 鐵人賽

DAY 6
0

本文主要介紹 PostgreSQL 執行指令的一些眉眉角角。

SQL 執行

前面的文章有提到,我們可以使用下述指令進入 PostgreSQL :

psql postgres

我們會看到 command line 的提示符變成:

postgres=#

在進入 psql 的介面後,就可以直接撰寫 SQL 語法。
換行時可以直接按 enter 進行換行,psql 直到辨識到 ; (代表 SQ L語意結束)才會開始執行。

比如以下這段創建資料表的 SQL 語法:

CREATE TABLE cities (
    name            varchar(80),
    location        point
);

在 psql 中在撰寫會長這樣(#字號後面為撰寫的部分):

postgres=# CREATE TABLE cities(
postgres(# name varchar(80),
postgres(# location point
postgres(# );

按下 enter 後,建立資料表,介面會如下顯示:

postgres=# CREATE TABLE cities(
name varchar(80),
location point
postgres(# );
CREATE TABLE
postgres=#

我們需要注意,在 psql 介面中,可以直接換行撰寫 SQL,並以 ; 為語句結束。

註:大家或許有注意到,SQL 中有些關鍵語句是使用大寫字母,這主要是慣例寫法,其實用小寫也不會出錯,但建議還是可以使用大寫,與其他內容做出區隔。

Meta-Commands

Meta commands are a feature that psql has which allows the user to do powerful operations without querying a database.

進入 psql 後,除了撰寫 SQL,也可以執行非 SQL 的指令。
這些指令就是所謂的 meta-commands,比如我們之前使用的:

# 查看資料庫
\l

# 查看角色 & 權限
\du

登入 psql 後,以 \ 開頭的指令會被視為 meta-commands,這些指令將會被 psql 所處理。

psql 的 meta-commands 的形式是在 \ 後接 command verb,再接參數。
比如上一章節中,查看指定資料庫的指令:

\l db_name 

我們可以注意,在 PostgreSQL 中撰寫非 SQL 語法,即 meta-commands,是以 \ 開頭。

參考資料:


上一篇
Day 5 創建資料庫 & 語言與排序設定
下一篇
Day 7 初識 SQL
系列文
新手小白的每天一點SQL31
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言